package com.rbn.stockmobiledevices.entradas;

import java.util.Date;
import java.util.List;

import com.rbn.stockmobiledevices.dispositivos.Dispositivo;
import com.rbn.stockmobiledevices.proveedores.Proveedor;
import com.rbn.stockmobiledevices.utils.AutoCompleteElement;

public interface EntradaManager {
	public List<Entrada> getAll();
	public Entrada getById(Long imei);
	//public List<Entrada> getByCodigo(String codigo);
	public List<Entrada> getPaginadoEntrada(Integer startPosition, Integer pageSize, String imei, String dispositivo, Long proveedor, Date fecha);
	public void update(Entrada entrada);
	public void remove(Entrada entrada);
	public Boolean remove(Long imei);
	public void save(Entrada entrada);
	/* Related objects */
	public Dispositivo getDispositivoById(String codigo);
	public Proveedor getProveedorById(int id);
	public Estado getEstadoById(int id);
	
	public Integer saveEstado(Estado estado);
	public void updateEstado(Estado estado);
	public Boolean removeEstado(int id);
	public List<AutoCompleteElement> getDispositivosOptionsByModelo(String search);
	public List<AutoCompleteElement> getProveedorOptionsByModelo(String search);
	public List<AutoCompleteElement> getEstadoOptionsByModelo(String search);
}
